package com.turing.post.organization.util;

import java.math.BigInteger;

import javax.ejb.Local;
import javax.ejb.Remote;

import com.turing.post.util.PCPSApplicationException;
import com.turing.post.util.PCPSWebInput;

/**
 * 发卡商分支机构
 * 
 * @author zxp
 * @Dec 18, 2012
 */
@Remote
@Local
public interface IssueBranchBusiness {

	/**
	 * 新增发卡商分支机构
	 * 
	 * @param webInput
	 *            日志记录对象
	 * @param issueBranch
	 *            发卡商分支机构
	 * @throws PCPSApplicationException
	 */
	public void insertIssueBranchInfo(PCPSWebInput webInput,
			IssueBranch issueBranch) throws PCPSApplicationException;

	/**
	 * 修改发卡商分支机构
	 * 
	 * @param webInput
	 *            日志记录对象
	 * @param issueBranch
	 *            发卡商分支机构
	 * @throws PCPSApplicationException
	 */
	public void updateIssueBranchInfo(PCPSWebInput webInput,
			IssueBranch issueBranch) throws PCPSApplicationException;

	/**
	 * @param webInput
	 * @param issueBranch
	 * @throws PCPSApplicationException
	 */
	public void deleteIssueBranchInfo(PCPSWebInput webInput,
			String issueBranchNo) throws PCPSApplicationException;

	/**
	 * 修改啊发卡机构激活额度
	 * 
	 * @param webInput
	 * @param issueBranch
	 * @throws PCPSApplicationException
	 */
	public void updateIssueBranchActivateOrCredit(PCPSWebInput webInput,
			IssueBranch issueBranch) throws PCPSApplicationException;

	/**
	 * 激活额度记帐
	 * 
	 * @param issueBranchNo
	 * @param tranType
	 * @param amount
	 * @param orderType
	 * @param orderId
	 * @param operId
	 * @throws PCPSApplicationExceptionF
	 */
	public void activateAccount(String issueBranchNo, String tranType,
			BigInteger amount, String orderType, BigInteger orderId,
			BigInteger operId) throws PCPSApplicationException;
}
